
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 临时存储图片路径，预览
    arrList: [],
    // 点击图标显示和隐藏
    addImg: true,
    index: 0,
    index2: 0,
    // 一级分类的数组和二级分类的数组
    array: ["壁纸", "头像"],
    array2: ["请先选择一级分类"],
  },
  // 一级分类
  bindPickerChange: function (e) {
    let lsbl = (++e.detail.value);
    let temp = []
    // 获取二级分类
    wx.request({
      url: `https://watermark.czmao.cn:3000/twosort?num=${lsbl}`,
      success: (res) => {
        for (let i = 0; i < res.data.list.length; i++) {
          temp.push(res.data.list[i].twoName)
        }
        this.setData({
          array2: temp,
          index2: 0
        })
      }
    })
    this.setData({
      index: (lsbl - 1)
    })
  
    console.log('picker发送选择改变，携带值为', (lsbl))
  },
  // 二级分类
  bindPickerChange2: function (e) {
    if (this.data.array2[0] == "请先选择一级分类") {
      wx.showToast({
        title: '请先选择一级分类',
        icon: "error"
      })
      return;
    }
    this.setData({
      index2: e.detail.value
    })
  },
  // 预览
  yl(e) {
    let lsbl = [];
    for (let i = 0; i < this.data.arrList.length; i++) {
      lsbl.push({ url: this.data.arrList[i].tempFilePath })
    }
    wx.previewMedia({
      sources: lsbl,
      current: e.currentTarget.dataset.index
    })
  },
  // 重置
  toCz() {
    this.setData({
      arrList: [],
      addImg: true
    })
  },
  // 上传图片成功，重置页面
  seting() {
    this.setData({
      addImg: true,
      index: 0,
      index2: 0,
      arrList: []
    })

  },
  // 图片上传
  btn(filePath) {
    if (this.data.arrList.length == 0) {
      wx.showToast({
        title: '请选择添加的图片',
        icon: "error"
      })
      return;
    }
    let that = this;
    // 因为数据库设置的是从1开始，不是0开始，所以要++，给它加一
    let a = ++this.data.index; //onenum
    let b = ++this.data.index2; //twonum
    // 当前时间
    let nowtime= this.getNowtime()
    // openid
    let openid= wx.getStorageSync('openid').openid;
    let img_number = this.generateRandomNumber(); //每发布一次的图片组编号
    let state = 1;//默认1 
    for (let i = 0; i < this.data.arrList.length; i++) {
      wx.uploadFile({
        url: `https://watermark.czmao.cn:3000/upload?onenum=${a}&twonum=${b}&openid=${openid}&img_number=${img_number}&state=${state}&release_time=${nowtime}`, // 替换为你的服务器地址
        filePath: this.data.arrList[i].tempFilePath,
        name: 'image',
        success(res) {
          wx.showToast({
            title: `上传${i + 1}张成功`,
          })
          console.log(res.data); // 上传成功后的响应数据
          // 等循环到最后一个,重置页面
          if (i == that.data.arrList.length - 1) {
            that.seting();
          }
          let responseData = JSON.parse(res.data);
          // let uploadedFilePath = responseData.filePath;
          // 使用返回的文件路径进行其他操作

        },
        fail(err) {
          console.error(err); // 上传失败的错误信息
          indexTemp = false;
        }
      });
    }
  },
  // 获取图片编号
  generateRandomNumber() {  
    // 获取当前年、月、日  
    let now = new Date();  
    let year = now.getFullYear();  
    let month = now.getMonth() + 1;  
    let day = now.getDate();  
    // 拼接年、月、日  
    let datePart = `${year}${month}${day}`  
    // 获取当前时间戳  
    let timestamp = new Date().getTime();  
    // 截取时间戳后3位  
    let timestampPart = timestamp.toString().substr(-3);  
    // 拼接年月日和时间戳后3位  
    let randomNumber = `CL${datePart}${timestampPart}`;  
    return randomNumber;  
  } ,
  // 获取当前时间
  getNowtime(){
    let now = new Date();  
    let year = now.getFullYear();  
    let month = now.getMonth() + 1;  
    let day = now.getDate();  
    let hours = now.getHours();  
    let minutes = now.getMinutes();  
    let seconds = now.getSeconds();  
    
    // 添加前导零  
    // month = ('0' + month).slice(-2);  
    // day = ('0' + day).slice(-2);  
    hours = ('0' + hours).slice(-2);  
    minutes = ('0' + minutes).slice(-2);  
    seconds = ('0' + seconds).slice(-2);  
    
    return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds; 
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    let temp = []
    wx.request({
      url: 'https://watermark.czmao.cn:3000/onesort',
      success: (res) => {
        for (let i = 0; i < res.data.list.length; i++) {
          temp.push(res.data.list[i].Fname)
        }
        this.setData({
          array: temp
        })
      }
    })
  },
  flag() {
    if (this.data.arrList.length != 0) {
      this.setData({
        addImg: false
      })
    }
  },
  add() {
    let that = this;
    wx.chooseMedia({
      count: 9,
      mediaType: ['image', 'video'],
      sourceType: ['album', 'camera'],
      maxDuration: 30,
      camera: 'back',
      success: (res) => {
        this.setData({
          arrList: res.tempFiles
        })
        this.flag()
        this.abc()
        console.log(res.tempFiles)
      }
    })
  },
  // 默认获取二级分类的第一个
  abc() {
    let lsbl = 1;
    let temp = []
    wx.request({
      url: `https://watermark.czmao.cn:3000/twosort?num=${lsbl}`,
      success: (res) => {
        for (let i = 0; i < res.data.list.length; i++) {
          temp.push(res.data.list[i].twoName)
        }
        this.setData({
          array2: temp,
          index2: 0
        })
      }
    })
    this.setData({
      index: (lsbl - 1)
    })
  },
  toIndex() {
    wx.navigateBack({
      delta: 1,
      fail: (err) => {
        wx.switchTab({
          url: '../../pages/index/index',
        })
      }
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})